import axios from 'axios'
import Assert from '../common/Assert.js'

export const ZcService = class ZcService {
    static zcService = null
    requestUrl = 'http://localhost/zcs'

    static getInstance() {
        if (this.zcService == null) {
            this.zcService = new ZcService()
        }
        return this.zcService
    }

    /**
     * 分页查询
     * @param params
     */
    getByPage(params) {
        return axios.get(`${this.requestUrl}/page`, {
            params
        })
    }

    /**
     * 根据id查询
     * @param id
     */
    getById(id) {
        return axios.get(`${this.requestUrl}/${id}`)
    }

    /**\
     * 检查的方法
     * @param zc
     */
    check(zc) {
        if (!Assert.isNotNull(zc.caseid, '请选择案件')) {
            return false
        }
        if (!Assert.isNotNull(zc.cbr, '请输入承办人')) {
            return false
        }
        if (!Assert.isNotNull(zc.tel, '请输入联系电话')) {
            return false
        }
        if (!Assert.validPhone(zc.tel)) {
            return false
        }
        return true
    }

    /**
     * 保存的方法
     * @param zc
     */
    save(zc) {
        return axios.post(this.requestUrl, zc)
    }

    /**
     * 修改的方法
     * @param zc
     */
    update(zc) {
        return axios.put(this.requestUrl, zc)
    }

    /**
     * 根据id删除
     * @param id
     */
    removeById(id) {
        return axios.delete(`${this.requestUrl}/${id}`)
    }
}